#### buffer_copy (2 of 2 overloads)

Copies a limited number of bytes from a source buffer sequence to a target buffer sequence.

    template<
        typename MutableBufferSequence,
        typename ConstBufferSequence>
    std::size_t buffer_copy(
        const MutableBufferSequence & target,
        const ConstBufferSequence & source,
        std::size_t max_bytes_to_copy);

###### Parameters

target

  A modifiable buffer sequence representing the memory regions to which the bytes will be copied.

source

  A non-modifiable buffer sequence representing the memory regions from which the bytes will be copied.

max_bytes_to_copy

  The maximum number of bytes to be copied.

###### Return Value

The number of bytes copied.

###### Remarks

The number of bytes copied is the lesser of:

- `buffer_size(target)`
- `buffer_size(source)`
- `max_bytes_to_copy`

This function is implemented in terms of `memcpy`, and consequently it cannot be used to copy between overlapping memory regions.